package com.design.mode.prototype;

/**
 * @ClassName RealizType
 * @Description    原型模式 : 用一个 已经创建的对象为原型 ,通过改对象的复制来创建一个和原模型相似或者相同的新对象
 *
 *      拷贝分 深拷贝和浅拷贝
 *      1. 深拷贝: 创建一个新对象,属性中引用其它对象也被克隆,不在指向原有的地址
 *      2. 浅拷贝: 创建一个新对象,新对象的属性和之前的相同,出了基本变量属性,仍指向原有的对象的内存地址
 * @Author xiongchao
 * @Date 2020/9/28 11:24
 **/
public class RealizType implements Cloneable {

    RealizType(){
        System.out.println("原型创建成功");
    }

    public Object clone() throws CloneNotSupportedException {
        System.out.println("原型复制成功");
        return super.clone();
    }
}
